/*******************************************************************************
* Copyright (c) 2010, 2018 西安秦晔信息科技有限公司
* Licensed under the Apache License, Version 2.0 (the "License");
*    you may not use this file except in compliance with the License.
*    You may obtain a copy of the License at
*
*       http://www.apache.org/licenses/LICENSE-2.0
*
*    Unless required by applicable law or agreed to in writing, software
*    distributed under the License is distributed on an "AS IS" BASIS,
*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*    See the License for the specific language governing permissions and
*    limitations under the License.
*******************************************************************************/
package com.qinyeit.serviceapp.entity;

import lombok.Builder;
import lombok.experimental.Tolerate;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * ClassName: MaterialCost <br/>
 * Function: 成本卡 <br/>
 * date: 2018-12-01 14:09:56 <br/>
 *
 * @author liuwenjin
 * @version  1.0
 * @since JDK 1.8
 */
@Builder
@Entity
@Table(name="material_costs")
public class MaterialCost extends MerchantGroupBaseEntity<Long> {

	private static final long serialVersionUID = 1L;

	// 菜品库id 
    @Column(name="store_id")
	private Long storeId = null;

	// 菜品id 
    @Column(name="dishes_id")
	private Long dishesId = null;

	// 规格id 
    @Column(name="spec_id")
	private Long specId = null;

	// 废弃 出库仓库
    @Column(name="warehouse_id")
	private Long warehouseId = null;

	// 加工份数 
    @Column(name="process_qty")
	private Integer processQty = null;

	// 原料成本 
    @Column(name="material_cost",scale=2)
	private Double materialCost = null;

	// 其他成本 
    @Column(name="other_cost",scale=2)
	private Double otherCost = null;

	// 合计成本 
    @Column(name="cost",scale=2)
	private Double cost = null;


	//创建的时候生成 编辑的时候不变
	@Column(name="uuid", length = 300)
	private String uuid = "";

	//更新的时间戳 long
	@Column(name="update_timestamp")
	private Long updateTimestamp = null;




	@Tolerate
	public MaterialCost() {
		
	}
    @Tolerate
	public MaterialCost(Long id){
    	super.setId(id);
    }
	
	/**
	 * 获取菜品库id
	 */
	public Long getStoreId() {
		return this.storeId;
	}

    /**
     * 设置菜品库id
     */
	public MaterialCost setStoreId(Long storeId) {
		this.storeId = storeId;
		return this;
	}

	/**
	 * 获取菜品id
	 */
	public Long getDishesId() {
		return this.dishesId;
	}

    /**
     * 设置菜品id
     */
	public MaterialCost setDishesId(Long dishesId) {
		this.dishesId = dishesId;
		return this;
	}

	/**
	 * 获取规格id
	 */
	public Long getSpecId() {
		return this.specId;
	}

    /**
     * 设置规格id
     */
	public MaterialCost setSpecId(Long specId) {
		this.specId = specId;
		return this;
	}

	/**
	 * 获取出库仓库
	 */
	public Long getWarehouseId() {
		return this.warehouseId;
	}

    /**
     * 设置出库仓库
     */
	public MaterialCost setWarehouseId(Long warehouseId) {
		this.warehouseId = warehouseId;
		return this;
	}

	/**
	 * 获取加工份数
	 */
	public Integer getProcessQty() {
		return this.processQty;
	}

    /**
     * 设置加工份数
     */
	public MaterialCost setProcessQty(Integer processQty) {
		this.processQty = processQty;
		return this;
	}

	/**
	 * 获取原料成本
	 */
	public Double getMaterialCost() {
		return this.materialCost;
	}

    /**
     * 设置原料成本
     */
	public MaterialCost setMaterialCost(Double materialCost) {
		this.materialCost = materialCost;
		return this;
	}

	/**
	 * 获取其他成本
	 */
	public Double getOtherCost() {
		return this.otherCost;
	}

    /**
     * 设置其他成本
     */
	public MaterialCost setOtherCost(Double otherCost) {
		this.otherCost = otherCost;
		return this;
	}

	/**
	 * 获取合计成本
	 */
	public Double getCost() {
		return this.cost;
	}

    /**
     * 设置合计成本
     */
	public MaterialCost setCost(Double cost) {
		this.cost = cost;
		return this;
	}

	public String getUuid() {
		return uuid;
	}

	public void setUuid(String uuid) {
		this.uuid = uuid;
	}

	public Long getUpdateTimestamp() {
		return updateTimestamp;
	}

	public void setUpdateTimestamp(Long updateTimestamp) {
		this.updateTimestamp = updateTimestamp;
	}
}
